package com.cloudweb.oa.api;

import com.alibaba.fastjson.JSONObject;
import com.redmoon.oa.flow.FormDb;
import com.redmoon.oa.visual.ModuleSetupDb;

import javax.servlet.http.HttpServletRequest;
import java.util.Date;

public interface ILicenseUtil {
    String getSerial();

    JSONObject validateAc();

    void init();

    String genActivateRequestCode();

    boolean isEnabled(String component);

    String getCompErrMsg(String component);

    String getFormWatermark();

    boolean isOem();

    boolean isTrial();

    boolean isNoActivate();

    String getCompany();

    Date getExpiresDate();

    String getDomain();

    String getEnterpriseNum();

    boolean isPortUnlimit();

    Object[] fitCondAndUrlStr(HttpServletRequest request, ModuleSetupDb msd, FormDb fd);

    String getVersionType();

    String getVersion();

    String getCategory();
}